Layout Management হল সুইং (Swing) এর একটি গুরুত্বপূর্ণ অংশ যা GUI উপাদানগুলির অবস্থান এবং আকার নিয়ন্ত্রণ করে। সুইং-এ, আপনি বিভিন্ন Layout Managers ব্যবহার করতে পারেন, যা আপনার অ্যাপ্লিকেশনটি কিভাবে উপাদানগুলো (components) সজ্জিত করবে তা নির্ধারণ করে। সুইং-এ বিভিন্ন ধরনের Layout Manager আছে, যার মধ্যে FlowLayout, BorderLayout, এবং GridLayout সবচেয়ে বেশি ব্যবহৃত।
FlowLayout হল সুইং-এর ডিফল্ট লেআউট ম্যানেজার যা উপাদানগুলিকে একটি সারিতে (হরিজেন্টালি) বা কলামে (ভার্টিকালি) সাজানোর জন্য ব্যবহৃত হয়। যখন উপাদানগুলির পরিমাণ স্থান থেকে বেশি হয়, তখন সেগুলি পরবর্তী সারিতে চলে যায়।
import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample {
public static void main(String[] args) {
// JFrame তৈরি
JFrame frame = new JFrame("FlowLayout Example");
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// JPanel তৈরি এবং FlowLayout সেট করা
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
// JButton তৈরি এবং প্যানেলে যোগ করা
panel.add(new JButton("Button 1"));
panel.add(new JButton("Button 2"));
panel.add(new JButton("Button 3"));
// JPanel JFrame এ যোগ করা
frame.add(panel);
// JFrame দৃশ্যমান করা
frame.setVisible(true);
}
}
ব্যাখ্যা:
BorderLayout হল সুইং-এর একটি লেআউট ম্যানেজার যা একটি প্যানেলকে ৫টি অঞ্চলে ভাগ করে: North, South, East, West, এবং Center। এর মাধ্যমে আপনি উপাদানগুলো বিভিন্ন স্থানীয় অঞ্চলে সাজাতে পারেন।
import javax.swing.*;
import java.awt.*;
public class BorderLayoutExample {
public static void main(String[] args) {
// JFrame তৈরি
JFrame frame = new JFrame("BorderLayout Example");
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// JPanel তৈরি এবং BorderLayout সেট করা
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
// উপাদানগুলো প্যানেলের মধ্যে যোগ করা
panel.add(new JButton("North"), BorderLayout.NORTH);
panel.add(new JButton("South"), BorderLayout.SOUTH);
panel.add(new JButton("East"), BorderLayout.EAST);
panel.add(new JButton("West"), BorderLayout.WEST);
panel.add(new JButton("Center"), BorderLayout.CENTER);
// JPanel JFrame এ যোগ করা
frame.add(panel);
// JFrame দৃশ্যমান করা
frame.setVisible(true);
}
}
ব্যাখ্যা:
GridLayout হল সুইং-এর একটি লেআউট ম্যানেজার যা উপাদানগুলিকে একটি নির্দিষ্ট সারি এবং কলামে সমানভাবে সাজানোর জন্য ব্যবহৃত হয়। প্রতিটি উপাদান একটি নির্দিষ্ট সেলে অবস্থান নেয়।
import javax.swing.*;
import java.awt.*;
public class GridLayoutExample {
public static void main(String[] args) {
// JFrame তৈরি
JFrame frame = new JFrame("GridLayout Example");
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// JPanel তৈরি এবং GridLayout সেট করা
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(3, 2)); // 3 সারি, 2 কলাম
// JButton তৈরি এবং প্যানেলে যোগ করা
panel.add(new JButton("Button 1"));
panel.add(new JButton("Button 2"));
panel.add(new JButton("Button 3"));
panel.add(new JButton("Button 4"));
panel.add(new JButton("Button 5"));
panel.add(new JButton("Button 6"));
// JPanel JFrame এ যোগ করা
frame.add(panel);
// JFrame দৃশ্যমান করা
frame.setVisible(true);
}
}
ব্যাখ্যা:
Layout Manager | বৈশিষ্ট্য | উপযুক্ত ব্যবহার |
---|---|---|
FlowLayout | উপাদানগুলো সারি বা কলামে সাজায়। | ছোট অ্যাপ্লিকেশন যেখানে উপাদানগুলো একে অপরের পাশে সাজানো প্রয়োজন। |
BorderLayout | পাঁচটি অঞ্চল: উত্তর, দক্ষিণ, পূর্ব, পশ্চিম, কেন্দ্র। | সিস্টেম উইন্ডো যেখানে একাধিক অংশ থাকতে হবে এবং কেন্দ্রীয় অংশ বড় হতে হবে। |
GridLayout | উপাদানগুলো একটি নির্দিষ্ট সংখ্যক সারি এবং কলামে সমানভাবে সাজায়। | অ্যাপ্লিকেশনে যেগুলোর মধ্যে সমান আকারের উপাদান থাকে। |
FlowLayout, BorderLayout, এবং GridLayout সুইং অ্যাপ্লিকেশনে উপাদান সাজানোর জন্য ব্যবহৃত জনপ্রিয় লেআউট ম্যানেজার। FlowLayout উপাদানগুলোকে একে একে সাজায়, BorderLayout একটি উইন্ডোকে পাঁচটি অংশে ভাগ করে এবং GridLayout উপাদানগুলোকে সারি ও কলামে সমানভাবে সাজায়। আপনার অ্যাপ্লিকেশনের প্রয়োজন অনুযায়ী সঠিক লেআউট ম্যানেজার নির্বাচন করা গুরুত্বপূর্ণ।
Swing GUI তৈরির সময়, উইন্ডোর ভিতরে উপাদানগুলি কিভাবে সজ্জিত হবে তা নিয়ন্ত্রণ করার জন্য Layout Managers ব্যবহার করা হয়। Layout Managers হল Java Swing এর একটি গুরুত্বপূর্ণ অংশ যা উপাদানগুলির সঠিক বিন্যাস এবং স্থান নির্ধারণ করতে সাহায্য করে। এটি উইন্ডো বা কন্টেইনারের মধ্যে উপাদানগুলোকে সঠিকভাবে সাজাতে সহায়তা করে, যাতে তারা স্বাভাবিকভাবে এবং যুক্তিসঙ্গতভাবে প্রদর্শিত হয়।
Layout Manager একটি ইন্টারফেস যা উপাদানগুলির বিন্যাস নিয়ন্ত্রণ করে। এটি প্যানেল বা কন্টেইনারের মধ্যে উপাদানগুলিকে সাজানোর জন্য বিভিন্ন কৌশল ব্যবহার করে। Layout Manager স্বয়ংক্রিয়ভাবে উপাদানগুলির আকার এবং অবস্থান নির্ধারণ করে, যা প্রোগ্রামারদের উপাদানগুলির অবস্থান ম্যানুয়ালি সেট করতে সহায়তা করে না।
Swing এ বিভিন্ন ধরনের Layout Manager রয়েছে, এবং প্রতিটি Layout Manager আলাদা আলাদা উপায়ে উপাদানগুলির সজ্জা নির্ধারণ করে।
Swing এ কয়েকটি গুরুত্বপূর্ণ Layout Manager রয়েছে। এগুলোর মধ্যে কিছু জনপ্রিয় হল:
FlowLayout হল সবচেয়ে সাধারণ Layout Manager যা উপাদানগুলোকে একটি নির্দিষ্ট দিক অনুযায়ী সাজায় (ডিফল্টভাবে এটি বাম থেকে ডানে)। যদি কোন উপাদান পর্যাপ্ত স্থান না পায়, তবে এটি পরবর্তী লাইনে চলে যাবে।
import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("FlowLayout উদাহরণ");
frame.setLayout(new FlowLayout()); // FlowLayout সেট করা
// JButton যোগ করা
frame.add(new JButton("বাটন 1"));
frame.add(new JButton("বাটন 2"));
frame.add(new JButton("বাটন 3"));
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
BorderLayout কম্পোনেন্টগুলোকে পাঁচটি অঞ্চলে (পদে) সজ্জিত করে: উত্তর (North), দক্ষিণ (South), পূর্ব (East), পশ্চিম (West) এবং কেন্দ্র (Center)। উপাদানগুলোর আকার এবং স্থান এই পাঁচটি অঞ্চলে ভাগ করা হয়।
import javax.swing.*;
import java.awt.*;
public class BorderLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BorderLayout উদাহরণ");
frame.setLayout(new BorderLayout()); // BorderLayout সেট করা
// JButton যোগ করা বিভিন্ন অঞ্চলে
frame.add(new JButton("উত্তর"), BorderLayout.NORTH);
frame.add(new JButton("দক্ষিণ"), BorderLayout.SOUTH);
frame.add(new JButton("পূর্ব"), BorderLayout.EAST);
frame.add(new JButton("পশ্চিম"), BorderLayout.WEST);
frame.add(new JButton("কেন্দ্র"), BorderLayout.CENTER);
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
GridLayout কম্পোনেন্টগুলিকে একটি সুষম গ্রিডে সজ্জিত করে, যেখানে প্রতিটি সেল একটি নির্দিষ্ট আকার ধারণ করে। এটি রো (row) এবং কলাম (column) এর মধ্যে উপাদানগুলো সজ্জিত করে।
import javax.swing.*;
import java.awt.*;
public class GridLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("GridLayout উদাহরণ");
frame.setLayout(new GridLayout(3, 2)); // 3 রো এবং 2 কলাম
// JButton যোগ করা
frame.add(new JButton("বাটন 1"));
frame.add(new JButton("বাটন 2"));
frame.add(new JButton("বাটন 3"));
frame.add(new JButton("বাটন 4"));
frame.add(new JButton("বাটন 5"));
frame.add(new JButton("বাটন 6"));
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
GridBagLayout অত্যন্ত ফ্লেক্সিবল এবং শক্তিশালী Layout Manager যা উপাদানগুলিকে গ্রিডের সেলগুলোতে সজ্জিত করে, তবে এই Layout Manager এ সেলগুলির আকার এবং অবস্থান আরও কাস্টমাইজ করা যায়। এটি আরও বেশি কন্ট্রোল দেয়, তবে ব্যবহার করা একটু জটিল হতে পারে।
import javax.swing.*;
import java.awt.*;
public class GridBagLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("GridBagLayout উদাহরণ");
frame.setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
// GridBagLayout এ উপাদান যোগ করা
JButton button1 = new JButton("বাটন 1");
gbc.gridx = 0; gbc.gridy = 0;
frame.add(button1, gbc);
JButton button2 = new JButton("বাটন 2");
gbc.gridx = 1; gbc.gridy = 0;
frame.add(button2, gbc);
JButton button3 = new JButton("বাটন 3");
gbc.gridx = 0; gbc.gridy = 1;
frame.add(button3, gbc);
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
BoxLayout উপাদানগুলোকে একক সারিতে (Horizontal) অথবা একক কলামে (Vertical) সজ্জিত করে। এটি একসাথে একাধিক উপাদান সাজাতে সহজভাবে ব্যবহৃত হয়।
import javax.swing.*;
import java.awt.*;
public class BoxLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BoxLayout উদাহরণ");
frame.setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS)); // Vertical BoxLayout
// JButton যোগ করা
frame.add(new JButton("বাটন 1"));
frame.add(new JButton("বাটন 2"));
frame.add(new JButton("বাটন 3"));
frame.setSize(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
Swing এর Layout Managers এর মাধ্যমে আপনি খুব সহজেই বিভিন্ন ধরনের উপাদানকে একটি সঠিক বিন্যাসে সাজাতে পারবেন। প্রতিটি Layout Manager এর নিজস্ব সুবিধা রয়েছে এবং আপনার অ্যাপ্লিকেশনের চাহিদার উপর ভিত্তি করে সঠিক Layout Manager নির্বাচন করতে হবে। FlowLayout, BorderLayout, GridLayout, GridBagLayout এবং BoxLayout এদের মধ্যে সবচেয়ে সাধারণ এবং জনপ্রিয় Layout Managers। এগুলো উপাদানগুলির আকার, স্থান এবং বিন্যাস নিয়ন্ত্রণ করতে সহায়ক।
Swing-এর মধ্যে Layout Managers হল সেই উপাদান যা GUI উপাদানগুলোর (যেমন বোতাম, টেক্সট ফিল্ড, লেবেল ইত্যাদি) অবস্থান ও আকার নির্ধারণ করে। সঠিক layout manager নির্বাচন করা খুবই গুরুত্বপূর্ণ, কারণ এটি অ্যাপ্লিকেশনের ইউজার ইন্টারফেসের যথাযথ সংগঠন নিশ্চিত করে। FlowLayout, BorderLayout, এবং GridLayout হল Swing-এ ব্যবহৃত তিনটি সাধারণ layout manager, যার মাধ্যমে UI উপাদানগুলোকে বিভিন্নভাবে সজ্জিত করা যায়।
FlowLayout একটি সাধারণ layout manager যা উপাদানগুলোকে স্বাভাবিক ফ্লোতে সাজায়, ঠিক যেমনটি একটি প্যারাগ্রাফে শব্দ সাজানো হয়। এটি উপাদানগুলোকে left-to-right (বা right-to-left, নির্ভর করে locale) সজ্জিত করে এবং পরবর্তী উপাদানটিকে এক্সপেন্ড করতে পরবর্তী লাইন বা কলামে নিয়ে যায় যদি স্পেস থাকে না।
FlowLayout.LEFT
, FlowLayout.CENTER
, এবং FlowLayout.RIGHT
এর মাধ্যমে উপাদানগুলোকে আলাদা আলাদা অবস্থানে সজ্জিত করা যায়।import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("FlowLayout Example");
// FlowLayout ব্যবহার করা
frame.setLayout(new FlowLayout());
// JButton তৈরি করা
JButton button1 = new JButton("Button 1");
JButton button2 = new JButton("Button 2");
JButton button3 = new JButton("Button 3");
// বোতামগুলো JFrame এ যোগ করা
frame.add(button1);
frame.add(button2);
frame.add(button3);
// JFrame সেটিংস
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, তিনটি বাটন FlowLayout
ব্যবহারের মাধ্যমে একে অপরের পাশে সাজানো হবে। যদি উইন্ডো ছোট হয়, তবে পরবর্তী বাটন নতুন লাইনে চলে যাবে।
BorderLayout একটি শক্তিশালী layout manager যা পাঁচটি ভিন্ন অংশে উপাদানগুলোকে সাজায়: North, South, East, West, এবং Center। এই layout manager সাধারণত এমন UI অ্যাপ্লিকেশনগুলোতে ব্যবহৃত হয় যেখানে একটি প্রধান কন্টেন্ট অংশ থাকে এবং অন্যান্য উপাদানগুলো চারপাশে থাকে।
import javax.swing.*;
import java.awt.*;
public class BorderLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BorderLayout Example");
// BorderLayout ব্যবহার করা
frame.setLayout(new BorderLayout());
// JButton তৈরি করা
JButton northButton = new JButton("North");
JButton southButton = new JButton("South");
JButton eastButton = new JButton("East");
JButton westButton = new JButton("West");
JButton centerButton = new JButton("Center");
// JButton গুলো সংশ্লিষ্ট অবস্থানে বসানো
frame.add(northButton, BorderLayout.NORTH);
frame.add(southButton, BorderLayout.SOUTH);
frame.add(eastButton, BorderLayout.EAST);
frame.add(westButton, BorderLayout.WEST);
frame.add(centerButton, BorderLayout.CENTER);
// JFrame সেটিংস
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, বাটনগুলোকে BorderLayout এর বিভিন্ন সেকশনে রাখা হয়েছে, যেমন NORTH
, SOUTH
, EAST
, WEST
, এবং CENTER
।
GridLayout একটি লেআউট ম্যানেজার যা উপাদানগুলোকে সেলুলার গ্রিডের মধ্যে সাজায়। এটি একটি টেবিলের মতো, যেখানে প্রতিটি উপাদান একটি সেলে রাখা হয়। GridLayout
-এর মাধ্যমে আপনি নির্দিষ্ট সংখ্যক সারি (row) এবং কলাম (column) নির্ধারণ করতে পারেন।
import javax.swing.*;
import java.awt.*;
public class GridLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("GridLayout Example");
// GridLayout ব্যবহার করা (2 সারি, 3 কলাম)
frame.setLayout(new GridLayout(2, 3));
// JButton তৈরি করা
JButton button1 = new JButton("Button 1");
JButton button2 = new JButton("Button 2");
JButton button3 = new JButton("Button 3");
JButton button4 = new JButton("Button 4");
JButton button5 = new JButton("Button 5");
JButton button6 = new JButton("Button 6");
// বাটনগুলো JFrame এ যোগ করা
frame.add(button1);
frame.add(button2);
frame.add(button3);
frame.add(button4);
frame.add(button5);
frame.add(button6);
// JFrame সেটিংস
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, GridLayout(2, 3)
এর মাধ্যমে ২টি সারি এবং ৩টি কলামের গ্রিড তৈরি করা হয়েছে। প্রত্যেকটি বাটন সমান আকারের সেলে রাখা হয়েছে।
এই লেআউট ম্যানেজারগুলির মাধ্যমে সুইং অ্যাপ্লিকেশনগুলিতে উপাদানগুলির সঠিক স্থিতি এবং আকার নিশ্চিত করা যায়, যা ইউজার ইন্টারফেসকে আরও সহজে ব্যবহারযোগ্য করে তোলে।
Swing-এ Layout Management হল একটি কনটেইনারের মধ্যে উপাদানগুলোর (যেমন, বাটন, লেবেল, টেক্সট ফিল্ড) সঠিকভাবে অবস্থান নির্ধারণের পদ্ধতি। Java Swing বিভিন্ন ধরনের লেআউট ম্যানেজার সরবরাহ করে, যা ব্যবহারকারীদের UI উপাদানগুলি সুন্দরভাবে এবং সুবিধাজনকভাবে সাজানোর জন্য সহায়তা করে।
এছাড়া, Layout Manager গুলি স্বয়ংক্রিয়ভাবে উপাদানগুলোর আকার এবং অবস্থান ঠিক করে, যাতে আপনার অ্যাপ্লিকেশন সারা প্ল্যাটফর্মে সঠিকভাবে প্রদর্শিত হয়।
Swing-এ কিছু জনপ্রিয় Layout Manager হলো:
FlowLayout হল একটি সহজ এবং সাধারণ লেআউট ম্যানেজার, যা উপাদানগুলোকে একটি লাইনে (পজিশনিং) সাজায়। যখন এক লাইনে জায়গা শেষ হয়ে যায়, তখন এটি পরবর্তী লাইনে উপাদানগুলো রাখে।
import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("FlowLayout Example");
// FlowLayout সেট করা
frame.setLayout(new FlowLayout());
// কিছু উপাদান যোগ করা
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
frame.add(new JLabel("This is a label"));
// JFrame কনফিগারেশন
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, FlowLayout ব্যবহার করে তিনটি বাটন এবং একটি লেবেল একে অপরের পাশে রাখা হয়েছে।
BorderLayout হলো একটি শক্তিশালী লেআউট ম্যানেজার, যা কনটেইনারের মধ্যে উপাদানগুলোকে পাঁচটি অংশে ভাগ করে রাখে: North (উত্তর), South (দক্ষিণ), East (পূর্ব), West (পশ্চিম), এবং Center (মধ্য)। এটি সাধারণত উইন্ডোর বড় এলাকা (Center) এবং ছোট অংশগুলো (North, South, East, West) ব্যবহার করতে উপযোগী।
import javax.swing.*;
import java.awt.*;
public class BorderLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BorderLayout Example");
// BorderLayout সেট করা
frame.setLayout(new BorderLayout());
// বিভিন্ন অংশে উপাদান যোগ করা
frame.add(new JButton("North"), BorderLayout.NORTH);
frame.add(new JButton("South"), BorderLayout.SOUTH);
frame.add(new JButton("East"), BorderLayout.EAST);
frame.add(new JButton("West"), BorderLayout.WEST);
frame.add(new JButton("Center"), BorderLayout.CENTER);
// JFrame কনফিগারেশন
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, BorderLayout ব্যবহার করে বাটনগুলো North, South, East, West এবং Center অংশে রাখা হয়েছে।
GridLayout ব্যবহারে, কনটেইনারের মধ্যে উপাদানগুলো সুনির্দিষ্ট সারি (row) এবং কলাম (column) এর মধ্যে সমানভাবে বণ্টিত হয়। এটি সহজে একটি টেবিল বা গ্রিড আকারে উপাদান সাজানোর জন্য ব্যবহৃত হয়।
import javax.swing.*;
import java.awt.*;
public class GridLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("GridLayout Example");
// GridLayout সেট করা (2 সারি এবং 3 কলাম)
frame.setLayout(new GridLayout(2, 3));
// GridLayout এ উপাদান যোগ করা
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
frame.add(new JButton("Button 4"));
frame.add(new JButton("Button 5"));
frame.add(new JButton("Button 6"));
// JFrame কনফিগারেশন
frame.setSize(300, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, GridLayout ব্যবহার করে 2 সারি এবং 3 কলামের গ্রিডে বাটনগুলো সাজানো হয়েছে।
BoxLayout ব্যবহার করে উপাদানগুলোকে একটি একক লাইন বা কলামে সাজানো হয়। এটি সাধারণত হরিজেন্টালি (একটি সারিতে) অথবা ভারটিকালি (একটি কলামে) উপাদানগুলো সাজাতে ব্যবহৃত হয়।
import javax.swing.*;
import java.awt.*;
public class BoxLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BoxLayout Example");
// BoxLayout সেট করা (বিভিন্ন উপাদান একসাথে সাজানো)
frame.setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS));
// উপাদান যোগ করা
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
// JFrame কনফিগারেশন
frame.setSize(200, 200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
এখানে, BoxLayout ব্যবহার করে বাটনগুলো একটি ভারটিকাল লাইন (Y_AXIS) এ সাজানো হয়েছে।
Swing-এর Layout Managers একটি গুরুত্বপূর্ণ অংশ, যা ব্যবহারকারীদের জন্য সহজে UI উপাদানগুলো সাজানোর সুযোগ দেয়। বিভিন্ন ধরনের লেআউট ম্যানেজার যেমন FlowLayout, BorderLayout, GridLayout, এবং BoxLayout আপনাকে বিভিন্ন কনটেইনারের মধ্যে উপাদানগুলোর সঠিক অবস্থান এবং আকার ঠিক করতে সাহায্য করে। এগুলি ব্যবহারের মাধ্যমে আপনি UI ডিজাইনকে আরও সুন্দর, সঠিক এবং ব্যবহারকারী-বান্ধব করতে পারেন।
Read more